﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using XcoAppSpaces.Contracts.Service;
using XcoAppSpaces.Contracts.Worker;

namespace test.XcoAppSpaces.Security.Basic.Helpers
{
	class ServiceRegistryMock : IXcoServiceRegistry
	{
		private IXcoWorkerRegistry workerRegistry;
		
		public ServiceRegistryMock(IXcoWorkerRegistry workerRegistry)
		{
			this.workerRegistry = workerRegistry;
		}

		#region IDisposable Members

		public void Dispose()
		{
			throw new NotImplementedException();
		}

		#endregion

		#region IXcoServiceRegistry Members

		public T Resolve<T>() where T : IXcoService
		{
			if (typeof(T) == typeof(IXcoWorkerRegistry))
				return (T)workerRegistry;
			throw new NotImplementedException();
		}

		public void InitializeServices()
		{
			throw new NotImplementedException();
		}

		public void Register(XcoServiceConfiguration service)
		{
			throw new NotImplementedException();
		}

		public void Register<T>(T service) where T : IXcoService
		{
			throw new NotImplementedException();
		}

		public T Resolve<T>(string name) where T : IXcoService
		{
			throw new NotImplementedException();
		}

		public List<XcoServiceConfiguration<T>> ResolveAll<T>() where T : IXcoService
		{
			throw new NotImplementedException();
		}

		public void StartServices()
		{
			throw new NotImplementedException();
		}

		public void StopServices()
		{
			throw new NotImplementedException();
		}

		#endregion
	}
}
